package cc.mrbird.unit.domain;

import cc.mrbird.common.annotation.ExportConfig;

import javax.persistence.*;
import java.io.Serializable;
@Table(name="unit_info")
public class UnitInfo implements Serializable {
    /**
     * 单位ID（考虑一种编码规则，后台自动生成）、单位名称、单位类型（根据单位类型管理的结果从下拉菜单中选取）、
     * 单位地址、归属网格、单位法人、联系电话、建筑开发商、联系人、联系电话、
     * 消防工程施工单位、联系人、联系电话、物业管理公司、联系人、联系电话
     */
    private static final long serialVersionUID = 7780820231535871115L;
    @Id
    @GeneratedValue(generator = "JDBC")
    @Column(name = "unit_id")
    @ExportConfig(value = "单位ID")
    private Long unit_id;

    @Column(name = "unit_name")
    @ExportConfig(value = "单位名称")
    private String unit_name;

    @Column(name = "type_id")
    private Long type_id;

    @Transient
    @ExportConfig(value = "单位类型")
    private String unit_type;

    @Column(name = "unit_address")
    @ExportConfig(value = "单位地址")
    private String unit_address;

    @Column(name = "attribution_grid")
    @ExportConfig(value = "归属网格")
    private String attribution_grid;

    @Column(name = "unit_legal")
    @ExportConfig(value = "单位法人")
    private String unit_legal;

    @Column(name = "unit_phone")
    @ExportConfig(value = "联系电话")
    private String unit_phone;

    @Column(name = "building_developer")
    @ExportConfig(value = "建筑开发商")
    private String building_developer;

    @Column(name = "building_contact")
    @ExportConfig(value = "开发商联系人")
    private String building_contact;

    @Column(name = "building_phone")
    @ExportConfig(value = "开发商联系电话")
    private String building_phone;

    @Column(name = "construction_unit")
    @ExportConfig(value = "消防工程施工单位")
    private String construction_unit;

    @Column(name = "construction_contact")
    @ExportConfig(value = "施工单位联系人")
    private String construction_contact;

    @Column(name = "construction_phone")
    @ExportConfig(value = "施工单位联系电话")
    private String construction_phone;

    @Column(name = "property_management")
    @ExportConfig(value = "物业管理公司")
    private String property_management;

    @Column(name = "property_contact")
    @ExportConfig(value = "物业联系人")
    private String property_contact;

    @Column(name = "property_phone")
    @ExportConfig(value = "物业联系电话")
    private String property_phone;

    @Column(name = "contact_id")
    @ExportConfig(value = "联络信息id")
    private Long contact_id;

    @Column(name = "auxiliary_id")
    @ExportConfig(value = "辅助信息id")
    private Long auxiliary_id;

    //--------------联络信息的主要数据内容-------------------//

    @ExportConfig(value = "联络人姓名")
    @Transient
    private String contact_name;

    @ExportConfig(value = "身份证号")
    @Transient
    private String contact_card;


    @ExportConfig(value = "角色")
    @Transient
    private String contact_role_name;

    @ExportConfig(value = "家庭住址")
    @Transient
    private String contact_address;

    @ExportConfig(value = "联系电话")
    @Transient
    private String contact_phone;

    @ExportConfig(value = "联系邮箱")
    @Transient
    private String contact_mail;

    //--------------辅助信息的主要数据内容-------------------//

    @ExportConfig(value = "消防通道平面图")
    @Transient
    private String floor_plan;

    @ExportConfig(value = "登高面定位位置图")
    @Transient
    private String location_map;

    @ExportConfig(value = "疏散通道信息")
    @Transient
    private String channel_infor;



    public static long getSerialVersionUID() {
        return serialVersionUID;
    }

    public Long getUnit_id() {
        return unit_id;
    }

    public void setUnit_id(Long unit_id) {
        this.unit_id = unit_id;
    }

    public String getUnit_name() {
        return unit_name;
    }

    public void setUnit_name(String unit_name) {
        this.unit_name = unit_name;
    }

    public String getUnit_type() {
        return unit_type;
    }

    public void setUnit_type(String unit_type) {
        this.unit_type = unit_type;
    }

    public String getUnit_address() {
        return unit_address;
    }

    public void setUnit_address(String unit_address) {
        this.unit_address = unit_address;
    }

    public String getAttribution_grid() {
        return attribution_grid;
    }

    public void setAttribution_grid(String attribution_grid) {
        this.attribution_grid = attribution_grid;
    }

    public String getUnit_legal() {
        return unit_legal;
    }

    public void setUnit_legal(String unit_legal) {
        this.unit_legal = unit_legal;
    }

    public String getUnit_phone() {
        return unit_phone;
    }

    public void setUnit_phone(String unit_phone) {
        this.unit_phone = unit_phone;
    }

    public String getBuilding_developer() {
        return building_developer;
    }

    public void setBuilding_developer(String building_developer) {
        this.building_developer = building_developer;
    }

    public String getBuilding_contact() {
        return building_contact;
    }

    public void setBuilding_contact(String building_contact) {
        this.building_contact = building_contact;
    }

    public String getBuilding_phone() {
        return building_phone;
    }

    public void setBuilding_phone(String building_phone) {
        this.building_phone = building_phone;
    }

    public String getConstruction_unit() {
        return construction_unit;
    }

    public void setConstruction_unit(String construction_unit) {
        this.construction_unit = construction_unit;
    }

    public String getConstruction_contact() {
        return construction_contact;
    }

    public void setConstruction_contact(String construction_contact) {
        this.construction_contact = construction_contact;
    }

    public String getConstruction_phone() {
        return construction_phone;
    }

    public void setConstruction_phone(String construction_phone) {
        this.construction_phone = construction_phone;
    }

    public String getProperty_management() {
        return property_management;
    }

    public void setProperty_management(String property_management) {
        this.property_management = property_management;
    }

    public String getProperty_contact() {
        return property_contact;
    }

    public void setProperty_contact(String property_contact) {
        this.property_contact = property_contact;
    }

    public String getProperty_phone() {
        return property_phone;
    }

    public void setProperty_phone(String property_phone) {
        this.property_phone = property_phone;
    }

    public Long getType_id() {
        return type_id;
    }

    public void setType_id(Long type_id) {
        this.type_id = type_id;
    }

    public Long getContact_id() {
        return contact_id;
    }

    public void setContact_id(Long contact_id) {
        this.contact_id = contact_id;
    }

    public Long getAuxiliary_id() {
        return auxiliary_id;
    }

    public void setAuxiliary_id(Long auxiliary_id) {
        this.auxiliary_id = auxiliary_id;
    }

    public String getContact_name() {
        return contact_name;
    }

    public void setContact_name(String contact_name) {
        this.contact_name = contact_name;
    }

    public String getContact_card() {
        return contact_card;
    }

    public void setContact_card(String contact_card) {
        this.contact_card = contact_card;
    }

    public String getContact_role_name() {
        return contact_role_name;
    }

    public void setContact_role_name(String contact_role_name) {
        this.contact_role_name = contact_role_name;
    }

    public String getContact_address() {
        return contact_address;
    }

    public void setContact_address(String contact_address) {
        this.contact_address = contact_address;
    }

    public String getContact_phone() {
        return contact_phone;
    }

    public void setContact_phone(String contact_phone) {
        this.contact_phone = contact_phone;
    }

    public String getContact_mail() {
        return contact_mail;
    }

    public void setContact_mail(String contact_mail) {
        this.contact_mail = contact_mail;
    }

    public String getFloor_plan() {
        return floor_plan;
    }

    public void setFloor_plan(String floor_plan) {
        this.floor_plan = floor_plan;
    }

    public String getLocation_map() {
        return location_map;
    }

    public void setLocation_map(String location_map) {
        this.location_map = location_map;
    }

    public String getChannel_infor() {
        return channel_infor;
    }

    public void setChannel_infor(String channel_infor) {
        this.channel_infor = channel_infor;
    }

    @Override
    public String toString() {
        return "UnitInfo{" +
                "unit_id=" + unit_id +
                ", unit_name='" + unit_name + '\'' +
                ", type_id=" + type_id +
                ", unit_type='" + unit_type + '\'' +
                ", unit_address='" + unit_address + '\'' +
                ", attribution_grid='" + attribution_grid + '\'' +
                ", unit_legal='" + unit_legal + '\'' +
                ", unit_phone='" + unit_phone + '\'' +
                ", building_developer='" + building_developer + '\'' +
                ", building_contact='" + building_contact + '\'' +
                ", building_phone='" + building_phone + '\'' +
                ", construction_unit='" + construction_unit + '\'' +
                ", construction_contact='" + construction_contact + '\'' +
                ", construction_phone='" + construction_phone + '\'' +
                ", property_management='" + property_management + '\'' +
                ", property_contact='" + property_contact + '\'' +
                ", property_phone='" + property_phone + '\'' +
                ", contact_id=" + contact_id +
                ", auxiliary_id=" + auxiliary_id +
                '}';
    }
}
